export default {
    // 1设置命名空间
    namespaced:true,
    // 共享数据
    state: {
        // 是否显示提示框
        isShowToast:false,
        // 提示内容
        toastMsg:'我是vuex提示内容',
        // 提示类型-图标 (success,danger,warning)
        toastType:'success'
    },
    mutations:{
        // 修改是否显示登录模态框状态
        // 之前: payload:true/false
        // 现在: payload:{a:xx,b:xx,c:xx}
        changeIsShowToast(state,payload) {
            // console.log("修改提示框显示状态");
            state.isShowToast = payload.isShow;
            // 提示框显示才更新msg 和 type 加进场离场效果后加个判断能移除留白bug
            if(payload.isShow) {
                state.toastType = payload.type;
                state.toastMsg = payload.title;
            }
            
        }
    },
    actions: {
        //可以写异步代码，跟mutations类型，不能直接修改数据，提交到mutations修改
        asyncShowToast(context, payload) {
            console.log("actions----", payload);
            // 显示提示框
            context.commit("changeIsShowToast", payload);
            // 自动关闭提示框
            setTimeout(() => {
                context.commit("changeIsShowToast", {
                    isShow: false,
                })
            }, 2000);
        }
    }
}